﻿Imports Commander_Wars.Spieletools
''' <summary>
''' Wird zu erstellen des KO's Andy verwendet copyright Nintendo und Intelligent System
''' </summary>
''' <remarks></remarks>
Public Class KOAndy
    Inherits ObjektKO
    Public Sub New(ByVal Spieler As Integer)
        MyBase.New(Spieler, KIGabeEinsatzstellen.RundenAnfang)
        StartwerteLaden()
    End Sub
    Public Sub New(ByVal Spieler As Integer, ByVal Gabefuellstand As Integer, ByVal Gabenart As Gabemodi, ByVal neuSternkosten As Integer)
        MyBase.New(Spieler, Gabefuellstand, Gabenart, neuSternkosten, KIGabeEinsatzstellen.RundenAnfang)
        StartwerteLaden()
    End Sub

    Private Sub StartwerteLaden()
        KOID = "ANDY"
        Armee = Armeen.OS.ToString
        Musik = "Andy"
        Bild = GetBildID()
        Select Case DataSettings.CommanderWarsGameModus
            Case CommanderWarsGameModi.AdvanceWars
                Sternkosten = 1000
                Gabekosten = 0
                SpezialgabeKosten = 4
                Gaben = Objektverwalter.GetKO(Bild).KOBeschreibung.Gaben
                Gaben(1) = Gaben(0)
            Case CommanderWarsGameModi.AdvanceWars2
                Sternkosten = 1000
                Gabekosten = 3
                SpezialgabeKosten = 3
                Gaben = Objektverwalter.GetKO(Bild).KOBeschreibung.Gaben
            Case CommanderWarsGameModi.AdvanceWarsDS
                Sternkosten = 1000
                Gabekosten = 3
                SpezialgabeKosten = 3
                Gaben = Objektverwalter.GetKO(Bild).KOBeschreibung.Gaben
            Case CommanderWarsGameModi.AdvanceWarsDC
                Sternkosten = 1000
                Gabekosten = 0
                SpezialgabeKosten = 6
                Gaben = Objektverwalter.GetKO(Bild).KOBeschreibung.Gaben
            Case Else
                Sternkosten = 1000
                Gabekosten = 3
                SpezialgabeKosten = 3
                Gaben = Objektverwalter.GetKO(Bild).KOBeschreibung.Gaben
        End Select
        KORange = 6
        KOname = Objektverwalter.GetKO(Bild).KOBeschreibung.Name

        KOLaden()
    End Sub

    Public Overrides Sub KOLaden()
        Bewegungsbonus = Nothing
        OffensivStaerke = Nothing
        If DataSettings.CommanderWarsGameModus = CommanderWarsGameModi.AdvanceWarsDC Then
            'Dafuer sinkt die Feuerkraft aber drastisch
            WetterReichweitenbonus(0) = 0
        End If
    End Sub

    Public Overrides Sub Gabeeinsetzen(Optional ByVal OhneFunktion As Boolean = False)
        If OhneFunktion = False Then
            EigeneEinheitenHeilen(2)
            AnimationEigene("ANDYGABE", 2)
        End If
        GabeEingesetzt()
    End Sub

    Public Overrides Sub SpezialGabeeinsetzen(Optional ByVal OhneFunktion As Boolean = False)
        If DataSettings.CommanderWarsGameModus = CommanderWarsGameModi.AdvanceWars Then
            If OhneFunktion = False Then
                EigeneEinheitenHeilen(2)
                AnimationEigene("ANDYGABE", 2)
            End If
            GabeEingesetzt()
        Else
            If OhneFunktion = False Then
                EigeneEinheitenHeilen(5)
                AnimationEigene("SPEZIALGABE", 2)
            End If
            Bewegungsbonus = New BewegungsboniTabelleAlles_1
            OffensivStaerke = New Feuerkrafttabelle120
            GabeEingesetzt()
        End If
    End Sub

    Public Overrides Function GetPowerScript(ByVal Power As Integer) As KOCustom.Power.PowerScript
        Select Case Power
            Case 1
                Dim P As New KOCustom.Power.PowerScript
                P.Effects.Add(New KOCustom.Power.PowerScript.EffectMassDamage(5, KOCustom.Power.PowerScript.EffectMassDamage.DamageUnit.Own))
                Return P
            Case 2
                Dim P As New KOCustom.Power.PowerScript
                P.Effects.Add(New KOCustom.Power.PowerScript.EffectMassDamage(5, KOCustom.Power.PowerScript.EffectMassDamage.DamageUnit.Own))
                Return P
            Case Else
                Return Nothing
        End Select
    End Function
    Public Overrides Sub KOFrame()
        'Wir machen nichts
    End Sub
End Class

Public Class KOBeschreibungAndy
    Inherits ObjektKOBeschreibung
    Public Sub New()
        Name = "Andy"
        Fein = "Reparieren"
        Nein = "Frueh Aufstehen"
        Beschreibung = New String() {"Ein KO aus Orange Star,der alles", "repariert. Hat ein etwas", "kindliches Gemuet."}
        Stil = New String() {"Ausgeglichener KO ohne", "Staerken oder Schwaechen."}
        Gabebeschreibung = New String() {"Alle Einheiten erhalten 2 TP."}
        SpezialgabeBeschreibung = New String() {"Alle Einheiten erhalten 5 TP", "sind staerker und koennen", "ein Feld weiter ziehen."}
        GabeKosten = 3
        Spezialgabekosten = 3
        Gaben = New String() {"Super-Tuning", "Mega-Tuning"}
        Synergie = New Decimal() {0.5#, 1.5#, 1, 0.5#, 0.5#, 0.5#, -1, 0.5#, 0.5#, -2}
        KONamen = New String() {"MAVERIK", "EAGLE", "MAX", "AIRA", "NELL", "TAMI", "VON BOLT", "EPOCH", "ROBOANDY", "MARY"}
        Doppelgabenamen = New String() {"Unheilvolle Allianz", "Luftzug", "Kraftakt", "Doppel-Gabe", "Doppel-Gabe", "Doppel-Gabe", "Doppel-Gabe", "Doppel-Gabe", "Doppel-Gabe", "Doppel-Gabe"}
        Gabesaetze = New String() {"Ich hab die Maschine noch nicht repariert!" _
                                , "Gebt mir meine Werkbank." _
                                , "Ich gebe nicht auf." _
                                , "Es ist Zeit fuer ein Tuning." _
                                , "Gib nie auf und verliere nie! Ich bin auf meinem Weg." _
                                , "Ich bin nicht besorgt. Ich kann alles reparieren."}
        Siegsaetze = New String() {"Wir haben gewonnen! Jippie!." _
                                , "Ich kann alles reparieren." _
                                , "Ich hab es geschafft. Habt ihr das gesehen."}
        Tauschsaetze = New String() {"Zeit die Aermel hoch zu krempeln." _
                                    , "Wenn es um reparieren geht. Bin ich der Richtige"}
        Doppelgabesaetze = New DoppelGabesatz() {New DoppelGabesatz("ANDY", "MAX", "Lass es uns tun Max.", "Ja! Wir zerbrechen sie wie Zahnstocher.") _
                                              , New DoppelGabesatz("ANDY", "MAX", "Wenn es ein Tag-Duell ist...", "sind wir die Besten.") _
                                              , New DoppelGabesatz("ANDY", "EAGLE", "Erfolg. Ich bin bereit fuer mehr. Ich kann jeden Tag kaempfen.", "Ha! Gut gesprochen. Mein bester Rivale.") _
                                              , New DoppelGabesatz("ANDY", "EAGLE", "Wir haben fast gesiegt.", "Selbstverstaendlich. Mich kann nur ich besiegen und das tue ich normalerweise nicht.") _
                                              , New DoppelGabesatz("ANDY", "MAVERIK", "Gleich haben wir gewonnen.", "Gut gekaempft. Jetzt weiss ich warum du mich das letzte Mal besiegt hast.") _
                                              , New DoppelGabesatz("ANDY", "MAVERIK", "Hey wir sind jetzt Freunde. Lass uns die Haende schuetteln", "Nein! Ich kann niemanden vertrauen.")}
        Niederlagesaetze = New String() {"Ach komm!", _
                                        "Naechstes mal werdet ihr Probleme haben!"}
    End Sub
End Class
